In Sets, bags, and mixes§
See primary documentation in context for infix (^), infix ⊖.
Returns the symmetric set difference of all its arguments. More information, Wikipedia definition.
In Operators§
See primary documentation in context for infix (^), infix ⊖.
multi infix:<(^)>($a, $b) multi infix:<(^)>(**@p)
Symmetric set difference operator.
Returns the symmetric set difference of all its arguments. This creates a new Set
made up of all the elements that $a
has but $b
doesn't and all the elements $b
has but $a
doesn't if none of the arguments are a Bag
, BagHash
, Mix
or MixHash
. Equivalent to ($a ∖ $b) ∪ ($b ∖ $a)
.
say <a b> (^) <b c>; # OUTPUT: «Set(a c)»
If any of the arguments are Baggy
or Mixy
, the result is a new Bag
(or Mix
).
say <a b> ⊖ bag(<b c>); # OUTPUT: «Bag(a c)»